<!DOCTYPE html>
<html lang="zh" xmlns:v-bind="http://www.w3.org/1999/xhtml">
<head>
    <title>如何请教别人 - Ryan Wang's Blog</title>
    <meta charset="utf-8">
    <meta name="X-UA-Compatible" content="IE=edge">
    <meta name="author" content="Ryan Wang">
    <meta name="description" content="在生活中，难免会遇到自己不能解决的问题。这个时候向别人求教是比较好的解决方案，如何向别人请教也是一门学问，这篇文章教会了我如何向别人请教！原文链接：http://blog.devtang.com/2017/03/05/how-to-get-help/我多多少少在iOS圈子里面有一点点知名度，所以在微">
    <meta name="keywords" content="如何请教别人,ryan0up,halo博客,halo,java,ruibaby,ryanwang,">
    <link rel="alternate" type="application/atom+xml" title="ATOM 1.0" href="/atom.xml">
    <meta charset="utf-8">
    <meta name="X-UA-Compatible" content="IE=edge">
    <meta content="width=device-width, initial-scale=1.0, maximum-scale=1.0, user-scalable=0" name="viewport">
    <meta content="telephone=no" name="format-detection">
    <meta name="renderer" content="webkit">
    <meta name="theme-color" content="#ffffff">
    <link rel="stylesheet" href="//cdn.jsdelivr.net/npm/bootstrap@4.1.3/dist/css/bootstrap.min.css" integrity="sha256-eSi1q2PG6J7g7ib17yAaWMcrr5GrtohYChqibrV7PBE=" crossorigin="anonymous">
    <link rel="stylesheet" href="/halo-theme-Journal/source/css/journal.min.css">
        <meta name="robots" content="none">
    <meta name="generator" content="Halo "/>
    <script data-ad-client="ca-pub-5271828906478846" async src="https://pagead2.googlesyndication.com/pagead/js/adsbygoogle.js"></script>
<script>
     (adsbygoogle = window.adsbygoogle || []).push({});
</script>

        <link rel="shortcut icon" type="images/x-icon" href="https://ryanc.cc/upload/2018/4/favicon.png">
    <script src="/halo-theme-Journal/source/js/loadCSS.js"></script>

    <!-- Import prettify css  -->
            <link rel="stylesheet" href="/halo-theme-Journal/source/css/prettify.min.css">
            <link rel="stylesheet" href="/halo-theme-Journal/source/css/prettify/github-v2.min.css">

    <script>
        loadCSS("https://fonts.googleapis.com/css?family=Lora|Montserrat|Fira+Mono|Material+Icons");
    </script>
    <!-- Global site tag (gtag.js) - Google Analytics -->
<script async src="https://www.googletagmanager.com/gtag/js?id=UA-110780416-1"></script>
<script>
window.dataLayer = window.dataLayer || [];
function gtag(){dataLayer.push(arguments);}
gtag('js', new Date());
gtag('config', 'UA-110780416-1');
</script>

    <noscript>
        <link rel="stylesheet" href="//fonts.googleapis.com/css?family=Lora|Montserrat|Anonymous+Pro:400|Material+Icons"/>
    </noscript>
</head>
<body>
<div id="top"></div>
<div id="app"><div class="single-column-drawer-container" ref="drawer"
     v-bind:class="{ 'single-column-drawer-container-active': isDrawerOpen }">
    <div class="drawer-content">
        <div class="drawer-menu">
                            <a class="a-block drawer-menu-item" href="/" target="_self">
                    Home
                </a>
                <a class="a-block drawer-menu-item" href="/archives" target="_self">
                    Archives
                </a>
                <a class="a-block drawer-menu-item" href="/links" target="_self">
                    Links
                </a>
                <a class="a-block drawer-menu-item" href="/journals" target="_self">
                    Journals
                </a>
                <a class="a-block drawer-menu-item" href="/s/about" target="_self">
                    About
                </a>

            <a class="a-block drawer-menu-item" href="/atom.xml">
                RSS
            </a>
        </div>
    </div>
</div>
<transition name="fade">
    <div v-bind:class="{ 'single-column-drawer-mask': mounted }" v-if="isDrawerOpen" v-on:click="toggleDrawer"></div>
</transition>
<nav ref="navBar" class="navbar sticky-top navbar-light single-column-nav-container">
    <div ref="navBackground" class="nav-background"></div>
    <div class="container container-narrow nav-content">
        <button id="nav_dropdown_btn" class="nav-dropdown-toggle" type="button" v-on:click="toggleDrawer">
            <i class="material-icons">
                menu
            </i>
        </button>
        <a ref="navTitle" class="navbar-brand" href="">
            Ryan Wang's Blog
        </a>
    </div>
</nav>
<div class="single-column-header-container" ref="pageHead"
     v-bind:style="{ transform: 'translateZ(0px) translateY('+.3*scrollY+'px)', opacity: 1-navOpacity }">
    <a href="">
        <div class="single-column-header-title">Ryan Wang's Blog</div>
        <div class="single-column-header-subtitle">Life is fantastic.</div>
    </a>
</div><div ref="sideContainer" class="side-container">
    <a class="a-block nav-head " href="">
        <div class="nav-title">
            Ryan Wang's Blog
        </div>
        <div class="nav-subtitle">
            Life is fantastic.
        </div>
    </a>

    <div class="nav-link-list">

                <a class="a-block nav-link-item" href="/" target="_self">
                    Home
                </a>
                <a class="a-block nav-link-item" href="/archives" target="_self">
                    Archives
                </a>
                <a class="a-block nav-link-item" href="/links" target="_self">
                    Links
                </a>
                <a class="a-block nav-link-item" href="/journals" target="_self">
                    Journals
                </a>
                <a class="a-block nav-link-item" href="/s/about" target="_self">
                    About
                </a>

        <a class="a-block no-tint nav-link-item" href="/atom.xml">
            RSS
        </a>
    </div>

    <div class="nav-footer">
        Proudly published with <a href="https://halo.run/" target="_blank" rel="noreferrer noopener">Halo</a><br>
        Theme <a href="https://github.com/SumiMakito/hexo-theme-journal/" target="_blank" rel="noreferrer noopener">Journal.</a> by <a href="https://mak1t0.cc/" target="_blank" rel="noreferrer noopener">Makito</a><br>
        &copy; 2019 <a href="">Ryan Wang's Blog</a>
    <br />
Server on Raspberry Pi
<br />
<a href="https://www.upyun.com/" target="_blank"><img src="/upload/2018/5/又拍云_logo5.png" style="width:48px"></img></a>
<script>
console.log("%c    __  __      __\n" +
                "   / / / /___ _/ /___\n" +
                "  / /_/ / __ `/ / __ \\\n" +
                " / __  / /_/ / / /_/ /\n" +
                "/_/ /_/\\__,_/_/\\____/ %c v1.1.1 https://github.com/halo-dev/halo","color:#4571ca;","color:red");
</script>
    </div>
</div><div ref="extraContainer" class="extra-container">
    <div class="pagination">
        <a id="globalBackToTop" class="pagination-action animated-visibility" href="#top" :class="{ invisible: scrollY == 0 }">
            <i class="material-icons pagination-action-icon">
                keyboard_arrow_up
            </i>
        </a>

    </div>
</div>
<div ref="streamContainer" class="stream-container">
    <div class="post-list-container post-list-container-shadow">
        <div class="post">
            <div class="post-head-wrapper" style="background-image: url('https://cdn.ryanc.cc/img/blog/thumbnails/c86b59623c4a9bfeac403824dec3a789.jpg')"
                 >
                <div class="post-title">
                    如何请教别人
                    <div class="post-meta">
                        <time datetime="2017-3-5 10:55:26" itemprop="datePublished">
                            2017-03-05 10:55
                        </time>&nbsp;
                            <i class="material-icons" style="">folder</i>
                                <a href='/categories/others'>其他</a>

                            <i class="material-icons" style="">label</i>
                                <a href='/tags/express'>表达</a>
                    </div>
                </div>
            </div>

            <div class="post-body-wrapper">
                <div class="post-body" v-pre>
                    <html>
 <head></head>
 <body>
  <blockquote> 
   <p>在生活中，难免会遇到自己不能解决的问题。这个时候向别人求教是比较好的解决方案，如何向别人请教也是一门学问，这篇文章教会了我如何向别人请教！</p> 
  </blockquote> 
  <p>原文链接：<a href="http://blog.devtang.com/2017/03/05/how-to-get-help/" title="http://blog.devtang.com/2017/03/05/how-to-get-help/">http://blog.devtang.com/2017/03/05/how-to-get-help/</a></p> 
  <p>我多多少少在 iOS 圈子里面有一点点知名度，所以在微博、微信、公众号上找我问问题的人不少。但是，大部分的程序员都不懂得如何请教别人，其实这件事情只需要学会「换位思考」就会好很多，但是还是有人做不好。 这篇文章主要是写给我自己用的，以后再遇到不会提问题的人，我就贴给他这篇文章就可以了。 如何请教别人呢，要做到以下几点。</p> 
  <h1>合适的自我介绍</h1> 
  <p>上次有一个人在一个线下分享会后一直拉着我问问题，我一直忍着没有问他是谁，后来问了太多，我实在受不了了，我问他：你是谁呀，为什么好像和我很熟的样子？他说：哦，我是一个 iOS 开发，你没必要记住我的名字。 类似的情形出现过多次，还有一些人把名字故意取成很个性的，完全无法记住的 emoji 表情或者符号，也不做自我介绍，我完全无法记住这些人。 合适的自我介绍为什么重要呢？因为它代表着一种尊重和平等。我义务解答问题没有关系，但是我即使完全不求回报，也希望我到底帮助的是谁。这个提问者的名字，毕业学校，工作单位，以及他的问题，都会给我带来记忆。 这其实是基本的礼仪，看看那些著名演讲或者发布会的提问环节吧，提问者都会先自我介绍一番。</p> 
  <h1>在吗？</h1> 
  <p>「在吗」，基本上以这种方式和我打招呼的提问者，通常都是令我感受非常差的。因为这意味着：我看到了必须回答在，我回答在了之后，还必须立即响应他后续的问题。 同学们，现在连 QQ 都取消在线状态了，有什么事情不能用留言的方式解决呢？说白了，还不是提问者自我为中心，他们希望偷懒，连在请教别人这件事情上，他们都希望不要浪费自己的打字 —- 如果对方不在，我就可以不用打字提问题了，免得提了别人不答。 但是，如果你这么不尊重对方的时间，又何来让对方免费的、在线互动地和你一问一答帮助你解决你的问题？ 凭什么？</p> 
  <h1>不会提问</h1> 
  <p>很多人都描述不清楚自己的问题，需要我来帮助他们一点点来弄清楚他到底想问什么。我举一个例子： 上次一个人在群里面问：有谁知道怎么更新 Mac 的 Numbers 吗？我以为他是一个 Mac 新手，于是我说：打开 Mac 的 App Store 应用，在 Updates 里面找到 Numbers，然后点 “update” 按钮。 结果他说：我知道，但是我为什么点了没有反应呢？我这个时候才发现，他其实是想问为什么 App Store 响应慢。于是我推荐他设置了一些加速下载的 DNS。 因为这个人我认识，所以我继续在帮助他。但是其实他给了我相当糟糕的体验。因为我在帮助他的时候，我在努力把解决方案说清楚，但是他懒得连问题都不想说清楚。或者，他认为只要他说「不会更新某个应用」，就表示的是 AppStore 卡顿，而不是别的意思。</p> 
  <h1>提傻问题</h1> 
  <p>对于 iOS 开发者来说，向我提的最傻的两类问题是：审核问题和具体的 API 问题。 例如：</p> 
  <blockquote> 
   <p>唐老师，麻烦看看： Your app uses public APIs in an unapproved manner, which does not comply with section 3.3.1 of the Apple Developer Program License Agreement. Specifically, your app was found to use “canOpenURL:” to scan for an arbitrarily large list of apps. Use of this method for generalized app detection is not appropriate. Since there is no accurate way of predicting how an API may be modified and what effects those modifications may have, Apple does not permit unapproved uses of public APIs in App Store apps.</p> 
  </blockquote> 
  <p>审核的问题大部分情况下英文的审核意见已经说得非常清楚了，我实在没有什么动力做翻译。</p> 
  <p>另外如果是问 iOS 开发某个特定细节 API 的使用问题，其实是没有哪个人能够对苹果的所有 API 都了解得那么清楚的，与其问我，还不如用 Google 搜索或者查文档更好。</p> 
  <h1>扔代码</h1> 
  <p>上来就扔一段代码，然后说：照着你的博客写的，为什么出问题了呢？好象我写了免费的博客，就有义务帮他找 Bug 一样。 当然，扔代码的还算好的，还有扔过来一个 GitHub 工程的，说：「麻烦帮忙看看」，这真的是要让我吐血。。。</p> 
  <h1>情绪方面的问题</h1> 
  <p>巧哥，我 iOS 找不到工作怎么办？</p> 
  <p>巧哥，我希望从 xx 方向换到 iOS 方向，你怎么看？</p> 
  <p>巧哥，我的老大对我很差，你说我应不应该换一份工作？</p> 
  <p>大部分这些问题，我其实也只能说：努力努力再努力，或者选择沉默。因为我确实也帮不上什么忙。如果需要找人安抚心情的话，找好朋友可能更适合。</p> 
  <h1>不会感谢</h1> 
  <p>说句谢谢是最最基本的。</p> 
  <p>如果你的问题花费了别人大量的时间，例如几个小时或者一天，那么请别人吃个饭也是正常的。大家都是成年人，倒不是说要多功利，这仅是相互的尊重。</p> 
  <p>我现在如果有很困扰的问题要请教别人，简单几句能说清楚的，我会给别人微信留言说清楚，然后附一个 66 元的红包。简单几句说不清楚的，我会和别人约个时间当面请教，然后顺便请别人吃顿饭。外地的朋友，实在不知道如何感谢，我会说：希望以后如果需要我的时候，能够找我提供帮助。</p> 
  <h1>我的困境</h1> 
  <p>最后分享一下我的困境。</p> 
  <p>我每天收到几十个求助的问题，但是我精力非常有限，对于我来说时间优先级肯定是：首先完成工作上的事情、然后完成家里的事情、然后是娱乐和学习、然后是和朋友聊天交流、然后是休息，如果上面这些做完了，偶尔有精力，正好遇上了会提问，提的问题又是经过深入思考，而恰好我又知道答案，答案又恰好不会花费特别多的时间，那么我才有可能回答。</p> 
  <p>当然，如果是朋友的问题，我会把这个看作我处理社交关系的一件事情，那我可能就会放弃一些休息或学习时间来帮助朋友，因为或许有一天我也会需要朋友的帮助，同时朋友的成功也会给我带来开心。</p> 
  <p>希望这篇文章能够教会大家这个简单的「换位思考」法则。</p> 
  <p>谢谢。</p> 
  <p>转载自：<a href="http://blog.devtang.com/" title="唐巧的博客">唐巧的博客</a></p> 
 </body>
</html>
                </div>
            </div>

<nav class="post-pagination">
        <a class="newer-posts" href="/archives/sql-99-biao">
        上一篇<br>SQL变量和循环用法的体现-打印九九乘法表
    </a>
    <span class="page-number"></span>
    <a class="older-posts" href="/archives/future-me">
        下一篇<br>给未来的自己写封信-FutureMe.org
    </a>
</nav>

    <div class="post-comment-wrapper">
      	<script>
        var settings = {
        	autoLoad: false
        }  
        </script>
        <halo-comment id="17" type="post" :settings="settings"/>
    </div>
        </div>
    </div>
<div class="single-column-footer">
    Proudly published with <a href="https://halo.run/" target="_blank" rel="noreferrer noopener">Halo</a><br>
        Theme <a href="https://github.com/SumiMakito/hexo-theme-journal/" target="_blank" rel="noreferrer noopener">Journal.</a> by <a href="https://mak1t0.cc/" target="_blank" rel="noreferrer noopener">Makito</a><br>
    &copy; 2019 <a href="">Ryan Wang's Blog</a>
    <br />
Server on Raspberry Pi
<br />
<a href="https://www.upyun.com/" target="_blank"><img src="/upload/2018/5/又拍云_logo5.png" style="width:48px"></img></a>
<script>
console.log("%c    __  __      __\n" +
                "   / / / /___ _/ /___\n" +
                "  / /_/ / __ `/ / __ \\\n" +
                " / __  / /_/ / / /_/ /\n" +
                "/_/ /_/\\__,_/_/\\____/ %c v1.1.1 https://github.com/halo-dev/halo","color:#4571ca;","color:red");
</script>
</div></div>

</div>
<script src="//cdn.jsdelivr.net/npm/jquery@3.3.1/dist/jquery.min.js"
        integrity="sha256-FgpCb/KJQlLNfOu91ta32o/NMZxltwRo8QtmkMRdAu8=" crossorigin="anonymous"></script>
<script src="//cdn.jsdelivr.net/npm/popper.js@1.14.4/dist/umd/popper.min.js"
        integrity="sha256-EGs9T1xMHdvM1geM8jPpoo8EZ1V1VRsmcJz8OByENLA=" crossorigin="anonymous"></script>
<script src="//cdn.jsdelivr.net/npm/bootstrap@4.1.3/dist/js/bootstrap.min.js"
        integrity="sha256-VsEqElsCHSGmnmHXGQzvoWjWwoznFSZc6hs7ARLRacQ=" crossorigin="anonymous"></script>
<script src="https://cdn.jsdelivr.net/npm/vue@2.6.10/dist/vue.min.js"
        integrity="sha256-chlNFSVx3TdcQ2Xlw7SvnbLAavAQLO0Y/LBiWX04viY=" crossorigin="anonymous"></script>
<script src="//cdn.jsdelivr.net/npm/smooth-scroll@14.2.1/dist/smooth-scroll.polyfills.min.js"
        integrity="sha256-CI4Gq5E0io1Pv0xM3qPM+NUIOhbIBvC3GiN1Y4KhXpw=" crossorigin="anonymous"></script>
<script src="/halo-theme-Journal/source/js/journal.js"></script>

<!-- Import prettify js  -->
        <script src="/halo-theme-Journal/source/js/prettify.min.js"></script>
        <script>
            $(function() {
                $('pre').addClass('prettyprint linenums').attr('style', 'overflow:auto;');
                prettyPrint();
            })
        </script>
<script src="https://cdn.jsdelivr.net/npm/vue@2.6.10/dist/vue.min.js"
        integrity="sha256-chlNFSVx3TdcQ2Xlw7SvnbLAavAQLO0Y/LBiWX04viY=" crossorigin="anonymous"></script>
<script src="http://localhost:8090/halo-comment.min.js?version=1.1.2"></script>
</body>
</html>